In many known circuit-switched or packet-switched telephony solutions, a centralized piece of equipment (e.g. a switch or Private Branch Exchange (PBX)) provides call termination, call processing, switching and/or call handling capabilities. In large systems, the central equipment may be a powerful computer controlling a number of functions on circuit boards called line cards, which connect telephone sets to the computer. In small systems (e.g. in systems having ten or fewer terminal sets), the central intelligence may actually reside in a “golden” telephone set that is specially designed to hold the central processing equipment.
Regardless of the form the central equipment takes, a number of terminal sets (e.g. wired or wireless telephone sets) are usually connected to the central equipment. The terminal sets are typically “dumb” devices in comparison to the central equipment. That is, terminal sets may simply send hook-switch information and key presses (e.g. Dual Tone Multi-Frequency or DTMF tones) to the central equipment and convert signals from the central equipment such as a dial-tone, ringing tone, or voice signals into sound (or, in some cases, images or video). The terminal sets are typically unaware of the existence of any other terminal sets, and have no inherent capacity to interconnect themselves with another terminal set.
In centralized telephony systems, administration and discovery of telephone sets within a network is typically performed by the central equipment. For example, in a traditional circuit-switched Time Division Multiplexing (TDM) telephony system, for example, each terminal set may be connected to a port on the central call processing equipment. Typically, as part of an initialization sequence which occurs on power-up, each terminal set announces its availability to the central equipment. The central equipment monitors each port for such announcements as new terminal sets are connected, and is thus capable of “discovering” newly-added terminal sets.
In centralized Voice-over Internet Protocol (IP) or VoIP telephony systems, a very similar but slightly more complicated procedure is employed; however, a terminal set still announces its availability to the central call processing equipment via the network. As is known in the art, VoIP is the transmission of calls over a data network based on the IP. Communication takes the form of packet data, thus there is no fixed connection as in the case of circuit-switched networks. The communication can be text, voice, graphics or video. IP equipment may adhere to such standards as H.323 and Session Initiation Protocol (SIP) for interoperability. The H.323 standard generally describes how multimedia communication is to occur between terminals, network equipment and services. The SIP standard covers the technical requirements to set up, modify and tear down multimedia sessions over the Internet. As used herein, the term “call” refers to a multimedia communication between two endpoints, and includes a voice telephone call.
Regardless of whether central equipment is circuit switched or packet switched, during the course of discovering a new terminal set the central equipment will usually automatically assign and manage a Directory Number (DN), which is a form of network address. The DN may be, e.g., a PBX extension. As DNs are assigned to different sets, the DNs are added to a list of DNs maintained at the central equipment. Often, it is only on the basis of this centralized list that the centralized equipment is able to determine the identity of the physical terminal set that should be called when a DN is forwarded from a calling terminal set.
In centralized systems, call treatment options for each terminal set are also typically stored centrally and remain available even if the associated terminal set has been disconnected from the central equipment. The term “call treatment options” refers to settings which determine how incoming calls are to be handled, e.g. how many rings should occur before forwarding to voicemail, or whether to automatically forward a call to another extension. Because the call treatment options remain available, incoming calls intended for a terminal set which has become disconnected may nevertheless be handled in the same manner as when the terminal set was connected.
As the costs associated with greater processing capacity and memory continue to decrease, the inclusion of a call-processing engine in every telephone set connected to a network is becoming feasible. In such systems, it may be desirable to eliminate the central equipment. Such a decentralized system may be referred to as a distributed telephony system.
In a distributed telephony system, storage of call treatment options for a terminal set at central equipment is not possible because no central equipment exists. Call treatment options could be stored at the individual terminal set to which they apply. However, if such a terminal set were to become disconnected or otherwise inactive, the call treatment options for that terminal set may be inaccessible. It would be desirable for the call treatment options for a terminal set to remain available even when the terminal set has become unavailable.
More generally, it would be desirable for data specific to one network device to be available even upon the unavailability of that network device, so that it may be possible for another network device to assume the role of the unavailable network device during its unavailability.